\hypertarget{class_q_q_t_user_serial_protocol}{}\section{Q\+Q\+T\+User\+Serial\+Protocol Class Reference}
\label{class_q_q_t_user_serial_protocol}\index{Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}}


The \mbox{\hyperlink{class_q_q_t_user_serial_protocol}{Q\+Q\+T\+User\+Serial\+Protocol}} class 用户使用这个串口操作机器  




{\ttfamily \#include $<$qqtuserserialprotocol.\+h$>$}

Inheritance diagram for Q\+Q\+T\+User\+Serial\+Protocol\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{class_q_q_t_user_serial_protocol}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ad3824023155d177c7e113adf62390be1}\label{class_q_q_t_user_serial_protocol_ad3824023155d177c7e113adf62390be1}} 
void {\bfseries recv\+Handup} (const Q\+Byte\+Array \&l)
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ae2d7e5512f9be6c31f642b07659bc957}\label{class_q_q_t_user_serial_protocol_ae2d7e5512f9be6c31f642b07659bc957}} 
void {\bfseries send\+Handup\+Ack} ()
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a88091997dd6117c5d90135e1a66a88bd}\label{class_q_q_t_user_serial_protocol_a88091997dd6117c5d90135e1a66a88bd}} 
void {\bfseries recv\+Close} (const Q\+Byte\+Array \&l)
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_addf285333b724f705200f53d2a9de5a2}\label{class_q_q_t_user_serial_protocol_addf285333b724f705200f53d2a9de5a2}} 
void {\bfseries send\+Close\+Ack} ()
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a5b26cb05d525aa8865e695848497603f}\label{class_q_q_t_user_serial_protocol_a5b26cb05d525aa8865e695848497603f}} 
void {\bfseries recv\+Write\+Serial\+Number} (const Q\+Byte\+Array \&l)
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ac933c46abf990df72068dbb9f3efcfa5}\label{class_q_q_t_user_serial_protocol_ac933c46abf990df72068dbb9f3efcfa5}} 
void {\bfseries send\+Write\+Serial\+Number\+Ack} ()
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a18c8f9ea1a77fad687bd464ae23baf97}\label{class_q_q_t_user_serial_protocol_a18c8f9ea1a77fad687bd464ae23baf97}} 
void {\bfseries recv\+Read\+Serial} (const Q\+Byte\+Array \&l)
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a3bb8d376e787f04ce270bab9f5e60a81}\label{class_q_q_t_user_serial_protocol_a3bb8d376e787f04ce270bab9f5e60a81}} 
void {\bfseries send\+Read\+Serial\+Ack} ()
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ad28a4898b2ee0a3280b10466e2057085}\label{class_q_q_t_user_serial_protocol_ad28a4898b2ee0a3280b10466e2057085}} 
void {\bfseries recv\+Write\+Password} (const Q\+Byte\+Array \&l)
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a28c3c35cc307420802e694a8b2a67251}\label{class_q_q_t_user_serial_protocol_a28c3c35cc307420802e694a8b2a67251}} 
void {\bfseries send\+Write\+Password\+Ack} ()
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ad569a636f0b2eddd8da96048fee91168}\label{class_q_q_t_user_serial_protocol_ad569a636f0b2eddd8da96048fee91168}} 
void {\bfseries recv\+Read\+Password} (const Q\+Byte\+Array \&l)
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a821a63a296a36eb9fe7a26a13bfe93f8}\label{class_q_q_t_user_serial_protocol_a821a63a296a36eb9fe7a26a13bfe93f8}} 
void {\bfseries send\+Read\+Password\+Ack} ()
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a8690e2b2b83392f1f046b5e887bdef29}\label{class_q_q_t_user_serial_protocol_a8690e2b2b83392f1f046b5e887bdef29}} 
void {\bfseries send\+Exception\+Ack} ()
\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_afd8249fc7a4c896b701ec0e93a534b57}\label{class_q_q_t_user_serial_protocol_afd8249fc7a4c896b701ec0e93a534b57}} 
void {\bfseries sig\+Serial\+Unlock} ()
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a7a95f9ff4d149d0f2bc940c233000e52}\label{class_q_q_t_user_serial_protocol_a7a95f9ff4d149d0f2bc940c233000e52}} 
{\bfseries Q\+Q\+T\+User\+Serial\+Protocol} (Q\+Object $\ast$parent=0)
\item 
quint16 \mbox{\hyperlink{class_q_q_t_user_serial_protocol_a7dcd4e05381634dd45504571243ea853}{minlength}} () override
\begin{DoxyCompactList}\small\item\em 最小包长 \end{DoxyCompactList}\item 
quint16 \mbox{\hyperlink{class_q_q_t_user_serial_protocol_ad564c1976be71019499ea1de4fd51a12}{maxlength}} () override
\begin{DoxyCompactList}\small\item\em 最大包长 \end{DoxyCompactList}\item 
quint16 \mbox{\hyperlink{class_q_q_t_user_serial_protocol_abcadcc53d378823ad87a0d736169fd3e}{splitter}} (const Q\+Byte\+Array \&s) override
\begin{DoxyCompactList}\small\item\em 语法解析器 从流中解析报文长度 /.../quint16 size/.../.../... \end{DoxyCompactList}\item 
bool \mbox{\hyperlink{class_q_q_t_user_serial_protocol_ac851e9026524ef8081f7980480d83237}{dispatcher}} (const Q\+Byte\+Array \&m) override
\begin{DoxyCompactList}\small\item\em 语义解析器 分发报文 /.../quint16 size/.../\+Q\+Byte\+Array data/.../ \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
The \mbox{\hyperlink{class_q_q_t_user_serial_protocol}{Q\+Q\+T\+User\+Serial\+Protocol}} class 用户使用这个串口操作机器 

\subsection{Member Function Documentation}
\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ac851e9026524ef8081f7980480d83237}\label{class_q_q_t_user_serial_protocol_ac851e9026524ef8081f7980480d83237}} 
\index{Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}!dispatcher@{dispatcher}}
\index{dispatcher@{dispatcher}!Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}}
\subsubsection{\texorpdfstring{dispatcher()}{dispatcher()}}
{\footnotesize\ttfamily bool Q\+Q\+T\+User\+Serial\+Protocol\+::dispatcher (\begin{DoxyParamCaption}\item[{const Q\+Byte\+Array \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



语义解析器 分发报文 /.../quint16 size/.../\+Q\+Byte\+Array data/.../ 


\begin{DoxyParams}{Parameters}
{\em 数据包} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 no dispatched(others) 1 dispatched(own) 
\end{DoxyReturn}


Reimplemented from \mbox{\hyperlink{class_q_qt_protocol_a35a69c4b89c8cf7459038f40d75e0dc9}{Q\+Qt\+Protocol}}.

\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_ad564c1976be71019499ea1de4fd51a12}\label{class_q_q_t_user_serial_protocol_ad564c1976be71019499ea1de4fd51a12}} 
\index{Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}!maxlength@{maxlength}}
\index{maxlength@{maxlength}!Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}}
\subsubsection{\texorpdfstring{maxlength()}{maxlength()}}
{\footnotesize\ttfamily quint16 Q\+Q\+T\+User\+Serial\+Protocol\+::maxlength (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



最大包长 

\begin{DoxyReturn}{Returns}

\end{DoxyReturn}


Reimplemented from \mbox{\hyperlink{class_q_qt_protocol_af41bc3116abbbcfc9af45e151a253ff7}{Q\+Qt\+Protocol}}.

\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_a7dcd4e05381634dd45504571243ea853}\label{class_q_q_t_user_serial_protocol_a7dcd4e05381634dd45504571243ea853}} 
\index{Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}!minlength@{minlength}}
\index{minlength@{minlength}!Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}}
\subsubsection{\texorpdfstring{minlength()}{minlength()}}
{\footnotesize\ttfamily quint16 Q\+Q\+T\+User\+Serial\+Protocol\+::minlength (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



最小包长 

\begin{DoxyReturn}{Returns}

\end{DoxyReturn}


Reimplemented from \mbox{\hyperlink{class_q_qt_protocol_a2b00f53d3dd0eed817eeecff422891f3}{Q\+Qt\+Protocol}}.

\mbox{\Hypertarget{class_q_q_t_user_serial_protocol_abcadcc53d378823ad87a0d736169fd3e}\label{class_q_q_t_user_serial_protocol_abcadcc53d378823ad87a0d736169fd3e}} 
\index{Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}!splitter@{splitter}}
\index{splitter@{splitter}!Q\+Q\+T\+User\+Serial\+Protocol@{Q\+Q\+T\+User\+Serial\+Protocol}}
\subsubsection{\texorpdfstring{splitter()}{splitter()}}
{\footnotesize\ttfamily quint16 Q\+Q\+T\+User\+Serial\+Protocol\+::splitter (\begin{DoxyParamCaption}\item[{const Q\+Byte\+Array \&}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}



语法解析器 从流中解析报文长度 /.../quint16 size/.../.../... 


\begin{DoxyParams}{Parameters}
{\em 接收到的数据段} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
按照协议解析到的数据长度 可用，继续接收，丢弃，粘包。 
\end{DoxyReturn}


Reimplemented from \mbox{\hyperlink{class_q_qt_protocol_a00fd0c1ac23379ed3b9b25da9a34f39b}{Q\+Qt\+Protocol}}.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
R\+:/\+Develop/a0-\/develop/\+Lib\+Q\+Qt/examples/qqtnetworkexample/qqtuserserialprotocol.\+h\item 
R\+:/\+Develop/a0-\/develop/\+Lib\+Q\+Qt/examples/qqtnetworkexample/qqtuserserialprotocol.\+cpp\end{DoxyCompactItemize}
